<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>interrupt_operator [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_system.html">系统</a> / <a href="toc_system_multithreading.html">Multithreading</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">interrupt_operator</span><span data-if="c" style="display:none;">interrupt_operator</span><span data-if="cpp" style="display:none;">InterruptOperator</span><span data-if="dotnet" style="display:none;">InterruptOperator</span><span data-if="python" style="display:none;">interrupt_operator</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">interrupt_operator</span><span data-if="c" style="display:none;">interrupt_operator</span><span data-if="cpp" style="display:none;">InterruptOperator</span><span data-if="dotnet" style="display:none;">InterruptOperator</span><span data-if="python" style="display:none;">interrupt_operator</span></code> — Attempt to interrupt an operator running in a different thread.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>interrupt_operator</b>( :  : <a href="#HThreadID"><i>HThreadID</i></a>, <a href="#Mode"><i>Mode</i></a> : )</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>interrupt_operator</b>(const Hlong <a href="#HThreadID"><i>HThreadID</i></a>, const char* <a href="#Mode"><i>Mode</i></a>)</code></p>
<p>
<code>Herror <b>T_interrupt_operator</b>(const Htuple <a href="#HThreadID"><i>HThreadID</i></a>, const Htuple <a href="#Mode"><i>Mode</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>InterruptOperator</b>(const HTuple&amp; <a href="#HThreadID"><i>HThreadID</i></a>, const HTuple&amp; <a href="#Mode"><i>Mode</i></a>)</code></p>
<p>
<code>static void <a href="HSystem.html">HSystem</a>::<b>InterruptOperator</b>(Hlong <a href="#HThreadID"><i>HThreadID</i></a>, const HString&amp; <a href="#Mode"><i>Mode</i></a>)</code></p>
<p>
<code>static void <a href="HSystem.html">HSystem</a>::<b>InterruptOperator</b>(Hlong <a href="#HThreadID"><i>HThreadID</i></a>, const char* <a href="#Mode"><i>Mode</i></a>)</code></p>
<p>
<code>static void <a href="HSystem.html">HSystem</a>::<b>InterruptOperator</b>(Hlong <a href="#HThreadID"><i>HThreadID</i></a>, const wchar_t* <a href="#Mode"><i>Mode</i></a>)  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>InterruptOperator</b>(<a href="HTuple.html">HTuple</a> <a href="#HThreadID"><i>HThreadID</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Mode"><i>mode</i></a>)</code></p>
<p>
<code>static void <a href="HSystem.html">HSystem</a>.<b>InterruptOperator</b>(int <a href="#HThreadID"><i>HThreadID</i></a>, string <a href="#Mode"><i>mode</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>interrupt_operator</b>(<a href="#HThreadID"><i>hthread_id</i></a>: int, <a href="#Mode"><i>mode</i></a>: str) -&gt; None</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p><code><span data-if="hdevelop" style="display:inline">interrupt_operator</span><span data-if="c" style="display:none">interrupt_operator</span><span data-if="cpp" style="display:none">InterruptOperator</span><span data-if="com" style="display:none">InterruptOperator</span><span data-if="dotnet" style="display:none">InterruptOperator</span><span data-if="python" style="display:none">interrupt_operator</span></code> attempts to gracefully interrupt 该算子
currently running in the HALCON thread represented by <a href="#HThreadID"><i><code><span data-if="hdevelop" style="display:inline">HThreadID</span><span data-if="c" style="display:none">HThreadID</span><span data-if="cpp" style="display:none">HThreadID</span><span data-if="com" style="display:none">HThreadID</span><span data-if="dotnet" style="display:none">HThreadID</span><span data-if="python" style="display:none">hthread_id</span></code></i></a>.
If that currently running operator supports interruption, it will abort
its execution depending on <a href="#Mode"><i><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></i></a> (see below).
If the thread is currently not executing any operator, or if the
currently running operator does not support interruptions,
<code><span data-if="hdevelop" style="display:inline">interrupt_operator</span><span data-if="c" style="display:none">interrupt_operator</span><span data-if="cpp" style="display:none">InterruptOperator</span><span data-if="com" style="display:none">InterruptOperator</span><span data-if="dotnet" style="display:none">InterruptOperator</span><span data-if="python" style="display:none">interrupt_operator</span></code> is a no-op.
The execution of any future operator in the other thread is not affected.
</p>
<p>The ID representing a thread can be obtained with
<a href="get_current_hthread_id.html"><code><span data-if="hdevelop" style="display:inline">get_current_hthread_id</span><span data-if="c" style="display:none">get_current_hthread_id</span><span data-if="cpp" style="display:none">GetCurrentHthreadId</span><span data-if="com" style="display:none">GetCurrentHthreadId</span><span data-if="dotnet" style="display:none">GetCurrentHthreadId</span><span data-if="python" style="display:none">get_current_hthread_id</span></code></a>.
</p>
<p><code><span data-if="hdevelop" style="display:inline">interrupt_operator</span><span data-if="c" style="display:none">interrupt_operator</span><span data-if="cpp" style="display:none">InterruptOperator</span><span data-if="com" style="display:none">InterruptOperator</span><span data-if="dotnet" style="display:none">InterruptOperator</span><span data-if="python" style="display:none">interrupt_operator</span></code> supports currently only one type of interruption,
which can be set in <a href="#Mode"><i><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></i></a>.
Note that the corresponding type must
also be supported by 该算子 currently running in the other thread.
To determine if an operator is interruptible and which kind of
interrupts it supports, please see the
"Execution Information" section of 该算子 documentation or
query the information using the parameter <i><span data-if="hdevelop" style="display:inline">'interrupt_mode'</span><span data-if="c" style="display:none">"interrupt_mode"</span><span data-if="cpp" style="display:none">"interrupt_mode"</span><span data-if="com" style="display:none">"interrupt_mode"</span><span data-if="dotnet" style="display:none">"interrupt_mode"</span><span data-if="python" style="display:none">"interrupt_mode"</span></i> of
该算子 <a href="get_operator_info.html"><code><span data-if="hdevelop" style="display:inline">get_operator_info</span><span data-if="c" style="display:none">get_operator_info</span><span data-if="cpp" style="display:none">GetOperatorInfo</span><span data-if="com" style="display:none">GetOperatorInfo</span><span data-if="dotnet" style="display:none">GetOperatorInfo</span><span data-if="python" style="display:none">get_operator_info</span></code></a>.
</p>
<p>Some operators, for which no interruptibility is mentioned in the reference
documentation, can still be interrupted at some points of their execution.
However, such interruptabilities are not guaranteed and can change
without further notice between different versions of HALCON.
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'cancel'</span><span data-if="c" style="display:none">"cancel"</span><span data-if="cpp" style="display:none">"cancel"</span><span data-if="com" style="display:none">"cancel"</span><span data-if="dotnet" style="display:none">"cancel"</span><span data-if="python" style="display:none">"cancel"</span></i>:</b></dt>
<dd><p>

Abort the execution of 该算子.
All results computed by 该算子 are discarded and the
operator returns the error code H_ERR_CANCEL (22).
</p></dd>
</dl>
<h2 id="sec_attention">注意</h2>
<p>Note that not all operators support interruption.
If a given operator supports interruptions and which modes are supported is
described in the execution information section of the reference
documentation of the corresponding operator.
</p>
<p>Also note that there is no hard guarantee about the granularity of the
interruption.
The granularity can depend on 该算子, its input data and the speed of
the device.
It is typically finer than 10 ms.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="HThreadID" class="parname"><b><code><span data-if="hdevelop" style="display:inline">HThreadID</span><span data-if="c" style="display:none">HThreadID</span><span data-if="cpp" style="display:none">HThreadID</span><span data-if="com" style="display:none">HThreadID</span><span data-if="dotnet" style="display:none">HThreadID</span><span data-if="python" style="display:none">hthread_id</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Thread that runs 该算子 to interrupt.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Mode" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Interruption mode.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'cancel'</span>
    <span data-if="c" style="display:none">"cancel"</span>
    <span data-if="cpp" style="display:none">"cancel"</span>
    <span data-if="com" style="display:none">"cancel"</span>
    <span data-if="dotnet" style="display:none">"cancel"</span>
    <span data-if="python" style="display:none">"cancel"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'cancel'</span><span data-if="c" style="display:none">"cancel"</span><span data-if="cpp" style="display:none">"cancel"</span><span data-if="com" style="display:none">"cancel"</span><span data-if="dotnet" style="display:none">"cancel"</span><span data-if="python" style="display:none">"cancel"</span></p>
</div>
<h2 id="sec_example_all">例程 (HDevelop)</h2>
<pre class="example">
global tuple HThreadID
get_current_hthread_id (HThreadID)
* call some slow operator...

* In a different thread
wait_seconds(2)
* Interrupt the long-running operator in the other thread
interrupt_operator (HThreadID, 'cancel')
</pre>
<h2 id="sec_result">结果</h2>
<p>If all 该算子 parameters are valid, <code><span data-if="hdevelop" style="display:inline">interrupt_operator</span><span data-if="c" style="display:none">interrupt_operator</span><span data-if="cpp" style="display:none">InterruptOperator</span><span data-if="com" style="display:none">InterruptOperator</span><span data-if="dotnet" style="display:none">InterruptOperator</span><span data-if="python" style="display:none">interrupt_operator</span></code>
returns <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .  Otherwise an exception is raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="get_current_hthread_id.html"><span data-if="hdevelop" style="display:inline">get_current_hthread_id</span><span data-if="c" style="display:none">get_current_hthread_id</span><span data-if="cpp" style="display:none">GetCurrentHthreadId</span><span data-if="com" style="display:none">GetCurrentHthreadId</span><span data-if="dotnet" style="display:none">GetCurrentHthreadId</span><span data-if="python" style="display:none">get_current_hthread_id</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="set_operator_timeout.html"><span data-if="hdevelop" style="display:inline">set_operator_timeout</span><span data-if="c" style="display:none">set_operator_timeout</span><span data-if="cpp" style="display:none">SetOperatorTimeout</span><span data-if="com" style="display:none">SetOperatorTimeout</span><span data-if="dotnet" style="display:none">SetOperatorTimeout</span><span data-if="python" style="display:none">set_operator_timeout</span></a></code>
</p>
<h2 id="sec_see">参考其它</h2>
<p>
<code><a href="get_current_hthread_id.html"><span data-if="hdevelop" style="display:inline">get_current_hthread_id</span><span data-if="c" style="display:none">get_current_hthread_id</span><span data-if="cpp" style="display:none">GetCurrentHthreadId</span><span data-if="com" style="display:none">GetCurrentHthreadId</span><span data-if="dotnet" style="display:none">GetCurrentHthreadId</span><span data-if="python" style="display:none">get_current_hthread_id</span></a></code>, 
<code><a href="set_operator_timeout.html"><span data-if="hdevelop" style="display:inline">set_operator_timeout</span><span data-if="c" style="display:none">set_operator_timeout</span><span data-if="cpp" style="display:none">SetOperatorTimeout</span><span data-if="com" style="display:none">SetOperatorTimeout</span><span data-if="dotnet" style="display:none">SetOperatorTimeout</span><span data-if="python" style="display:none">set_operator_timeout</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Foundation</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
